﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000E67 RID: 3687
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueBonusSelectInfo : IMessage<RogueBonusSelectInfo>, IMessage, IEquatable<RogueBonusSelectInfo>, IDeepCloneable<RogueBonusSelectInfo>, IBufferMessage
	{
		// Token: 0x17002ED7 RID: 11991
		// (get) Token: 0x0600A581 RID: 42369 RVA: 0x001BDD58 File Offset: 0x001BBF58
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueBonusSelectInfo> Parser
		{
			get
			{
				return RogueBonusSelectInfo._parser;
			}
		}

		// Token: 0x17002ED8 RID: 11992
		// (get) Token: 0x0600A582 RID: 42370 RVA: 0x001BDD5F File Offset: 0x001BBF5F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueBonusSelectInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17002ED9 RID: 11993
		// (get) Token: 0x0600A583 RID: 42371 RVA: 0x001BDD71 File Offset: 0x001BBF71
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueBonusSelectInfo.Descriptor;
			}
		}

		// Token: 0x0600A584 RID: 42372 RVA: 0x001BDD78 File Offset: 0x001BBF78
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueBonusSelectInfo()
		{
		}

		// Token: 0x0600A585 RID: 42373 RVA: 0x001BDD8B File Offset: 0x001BBF8B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueBonusSelectInfo(RogueBonusSelectInfo other) : this()
		{
			this.bonusIdList_ = other.bonusIdList_.Clone();
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600A586 RID: 42374 RVA: 0x001BDDB5 File Offset: 0x001BBFB5
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueBonusSelectInfo Clone()
		{
			return new RogueBonusSelectInfo(this);
		}

		// Token: 0x17002EDA RID: 11994
		// (get) Token: 0x0600A587 RID: 42375 RVA: 0x001BDDBD File Offset: 0x001BBFBD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> BonusIdList
		{
			get
			{
				return this.bonusIdList_;
			}
		}

		// Token: 0x0600A588 RID: 42376 RVA: 0x001BDDC5 File Offset: 0x001BBFC5
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueBonusSelectInfo);
		}

		// Token: 0x0600A589 RID: 42377 RVA: 0x001BDDD3 File Offset: 0x001BBFD3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueBonusSelectInfo other)
		{
			return other != null && (other == this || (this.bonusIdList_.Equals(other.bonusIdList_) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600A58A RID: 42378 RVA: 0x001BDE08 File Offset: 0x001BC008
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			num ^= this.bonusIdList_.GetHashCode();
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600A58B RID: 42379 RVA: 0x001BDE3C File Offset: 0x001BC03C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600A58C RID: 42380 RVA: 0x001BDE44 File Offset: 0x001BC044
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600A58D RID: 42381 RVA: 0x001BDE4D File Offset: 0x001BC04D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			this.bonusIdList_.WriteTo(ref output, RogueBonusSelectInfo._repeated_bonusIdList_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600A58E RID: 42382 RVA: 0x001BDE74 File Offset: 0x001BC074
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			num += this.bonusIdList_.CalculateSize(RogueBonusSelectInfo._repeated_bonusIdList_codec);
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600A58F RID: 42383 RVA: 0x001BDEAD File Offset: 0x001BC0AD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueBonusSelectInfo other)
		{
			if (other == null)
			{
				return;
			}
			this.bonusIdList_.Add(other.bonusIdList_);
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600A590 RID: 42384 RVA: 0x001BDEDB File Offset: 0x001BC0DB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600A591 RID: 42385 RVA: 0x001BDEE4 File Offset: 0x001BC0E4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 16U && num != 18U)
				{
					this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
				}
				else
				{
					this.bonusIdList_.AddEntriesFrom(ref input, RogueBonusSelectInfo._repeated_bonusIdList_codec);
				}
			}
		}

		// Token: 0x0400434C RID: 17228
		private static readonly MessageParser<RogueBonusSelectInfo> _parser = new MessageParser<RogueBonusSelectInfo>(() => new RogueBonusSelectInfo());

		// Token: 0x0400434D RID: 17229
		private UnknownFieldSet _unknownFields;

		// Token: 0x0400434E RID: 17230
		public const int BonusIdListFieldNumber = 2;

		// Token: 0x0400434F RID: 17231
		private static readonly FieldCodec<uint> _repeated_bonusIdList_codec = FieldCodec.ForUInt32(18U);

		// Token: 0x04004350 RID: 17232
		private readonly RepeatedField<uint> bonusIdList_ = new RepeatedField<uint>();
	}
}
